    \begin{tikzpicture}
    %------------------------------------------------------------------------------------
    %    图片2.11
        \newcommand{\Yshift}{-1.5em}
        \tikzstyle{callout} = [draw, shape=rectangle callout, rounded corners, fill=yellow!20, align=left]
        \definecolor{skyblue}{rgb}{0.447,0.624,0.812} 
    
        \node (1) at (0,0) {(1)\ \textcolor{red}{0型语言}\ 由 \ \textcolor{blue}{0型文法}定义};
        \node[anchor=west] (w1) at ([xshift=1em,yshift=\Yshift]1.west) {· 产生式形式为:};
        \node[anchor=west, draw, fill=purple!10] (f1) at (w1.east) {$\alpha\rightarrow\beta$};
        
        \node[anchor=west] (2) at ([yshift=\Yshift*2]1.west) {(2)\ \textcolor{red}{1型语言}\ 由 \ \textcolor{blue}{1型文法}定义};
        \node[anchor=west] (w2) at ([xshift=1em,yshift=\Yshift]2.west) {· 产生式形式为:};
        \node[anchor=west, draw, fill=purple!10] (f2) at (w2.east) {$\mathrm{xAy\rightarrow x\beta y}$};
        
        \node[anchor=west] (3) at ([yshift=\Yshift*2]2.west) {(3)\ \textcolor{red}{2型语言}\ 由 \ \textcolor{blue}{2型文法}定义};
        \node[anchor=west] (w3) at ([xshift=1em,yshift=\Yshift]3.west) {· 产生式形式为:};
        \node[anchor=west, draw, fill=purple!10] (f3) at (w3.east) {$\mathrm{A\rightarrow\beta }$};
        
        \node[anchor=west] (4) at ([yshift=\Yshift*2]3.west) {(4)\ \textcolor{red}{3型语言}\ 由 \ \textcolor{blue}{3型文法}定义};
        \node[anchor=west] (w4) at ([xshift=1em,yshift=\Yshift]4.west) {· 产生式形式为:};
        \node[anchor=west, draw, fill=purple!10] (f4) at (w4.east) {$\mathrm{A\rightarrow aB,\ A\rightarrow a,\ A\rightarrow\varepsilon}$};
        
        \node[callout, callout absolute pointer={([xshift=0em,yshift=0.5em]f4)}] (c4) at ([xshift=4.5em,yshift=2em]f4) {又称\textcolor{red}{正规文法}!};
        \node[callout, callout absolute pointer={(f3.east)}] (c3) at ([xshift=8.5em,yshift=1.5em]f3) {又称\\ \textcolor{red}{上下文无关文法}!};
        \node[callout, callout absolute pointer={(f2.30)}] (c2) at ([xshift=7.5em,yshift=1.9em]f2) {又称\\ \textcolor{red}{上下文有关文法}!};
        \node[callout, callout absolute pointer={(f1.east)}] (c1) at ([xshift=8.5em,yshift=1.5em]f1) {又称\textcolor{red}{无限制文法}!};
        
        \node[anchor=west, draw, rounded corners, fill=skyblue!20, align=center] (注) at ([xshift=-0.5em,yshift=-4.3em]4.west) {
            【注】\ 四类语言为 包含关系，且有\textcolor{red}{$\mathrm{L_{0} \supset L_{1} \supset L_{2} \supset L_{3}}$};\\
            编译处理中主要应用\textcolor{red}{后两种文法}
        };
    \end{tikzpicture}